Machine learning models may be trained to perform a variety of cognitive tasks including, for example, image classification and speech recognition. A convolutional neural network is a type of machine learning model that may be trained using training data that has been labeled with the correct classifications (e.g., ground truth) for the training data. Training the convolutional neural network may include tuning the convolutional neural network (e.g., adjusting weights and/or biases) to minimize a cost function, which may represent the errors that are present in the classifications of the training data relative to the correct classifications for the training data.